﻿#ifndef CModelMange_H
#define CModelMange_H
/********************************************************************************
** @ Date:2025/04/17
** @ Author: HanJiaXin
** @ Description:驱动模块管理类,包含设备控制、界面、业务逻辑、测点管理
** @ Version:1.0.0
** @ ClassName:
** @ Fun:
********************************************************************************/
#include <QObject>
#include "Header.h"
#include "CMeasurePoint.h"
#include "CDevSensorSeries.h"

class CSensorDevlMange : public QObject
{
	Q_OBJECT

public:
	CSensorDevlMange(QString sDevGuid, QString sDevName, bool& bRet);
	~CSensorDevlMange();

	bool startDev();//开启设备
	void stopDev();//停止设备
	QWidget* getConfigWidget();						//获取设备配置界面
	QWidget* createWidget(EWidgetType enWidgetType);//创建界面
	bool ctrDev(SCtrInfo stCtrInfo);				//控制设备
	QList<CMeasurePoint*> getMeasurePoints();		//获取测点列表
	QString getDeviceStatus();						//获取设备状态
	QVector<QWidget*> getDeviceUiList();			//获取设备缩略图界面列表
	QMap<QString, QString> getInputPointList();		//获取设备输入测点列表
	void setInputPointList(QMap<QString, CMeasurePoint*>vecInputPoint);// 设置设备输入测点列表
	void deleteDev(QString sDevGuid);

public:
	QString m_sDevGuid;
	QString m_sDevName;
	CDevSensorSeries* m_pDev;//设备类
};

#endif